// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.

package org.jetbrains.kotlin.idea.fir.completion;

import com.intellij.testFramework.TestDataPath;
import org.jetbrains.kotlin.idea.base.plugin.KotlinPluginMode;
import org.jetbrains.kotlin.idea.base.test.TestRoot;
import org.jetbrains.kotlin.idea.test.JUnit3RunnerWithInners;
import org.jetbrains.kotlin.idea.test.KotlinTestUtils;
import org.jetbrains.kotlin.test.TestMetadata;
import org.junit.runner.RunWith;

/**
 * This class is generated by {@link org.jetbrains.kotlin.testGenerator.generator.TestGenerator}.
 * DO NOT MODIFY MANUALLY.
 */
@SuppressWarnings("all")
@TestRoot("fir/tests")
@TestDataPath("$CONTENT_ROOT")
@RunWith(JUnit3RunnerWithInners.class)
@TestMetadata("../../completion/testData/basic/withLib")
public class FirWithLibBasicCompletionTestGenerated extends AbstractFirWithLibBasicCompletionTest {
    @java.lang.Override
    @org.jetbrains.annotations.NotNull
    public final KotlinPluginMode getPluginMode() {
        return KotlinPluginMode.K2;
    }

    private void runTest(String testDataFilePath) throws Exception {
        KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
    }

    @TestMetadata("JavaAnnotationWithDefaultArgumentAtFirstPosition.kt")
    public void testJavaAnnotationWithDefaultArgumentAtFirstPosition() throws Exception {
        runTest("../../completion/testData/basic/withLib/JavaAnnotationWithDefaultArgumentAtFirstPosition.kt");
    }

    @TestMetadata("JavaAnnotationWithDefaultArgumentAtSecondPosition.kt")
    public void testJavaAnnotationWithDefaultArgumentAtSecondPosition() throws Exception {
        runTest("../../completion/testData/basic/withLib/JavaAnnotationWithDefaultArgumentAtSecondPosition.kt");
    }

    @TestMetadata("JavaAnnotationWithoutDefaultMethod.kt")
    public void testJavaAnnotationWithoutDefaultMethod() throws Exception {
        runTest("../../completion/testData/basic/withLib/JavaAnnotationWithoutDefaultMethod.kt");
    }

    @TestMetadata("JavaFinalStaticFieldAsAnnotationArgument.kt")
    public void testJavaFinalStaticFieldAsAnnotationArgument() throws Exception {
        runTest("../../completion/testData/basic/withLib/JavaFinalStaticFieldAsAnnotationArgument.kt");
    }

    @TestMetadata("NamedArgumentsJava.kt")
    public void testNamedArgumentsJava() throws Exception {
        runTest("../../completion/testData/basic/withLib/NamedArgumentsJava.kt");
    }

    @TestMetadata("NamedArgumentsKotlin.kt")
    public void testNamedArgumentsKotlin() throws Exception {
        runTest("../../completion/testData/basic/withLib/NamedArgumentsKotlin.kt");
    }

    @TestMetadata("NonShadowingExtensionFromDefaultImport.kt")
    public void testNonShadowingExtensionFromDefaultImport() throws Exception {
        runTest("../../completion/testData/basic/withLib/NonShadowingExtensionFromDefaultImport.kt");
    }

    @TestMetadata("NonShadowingExtensionFromPackage.kt")
    public void testNonShadowingExtensionFromPackage() throws Exception {
        runTest("../../completion/testData/basic/withLib/NonShadowingExtensionFromPackage.kt");
    }

    @TestMetadata("NonShadowingExtensionFromStarImport.kt")
    public void testNonShadowingExtensionFromStarImport() throws Exception {
        runTest("../../completion/testData/basic/withLib/NonShadowingExtensionFromStarImport.kt");
    }

    @TestMetadata("OverrideJava.kt")
    public void testOverrideJava() throws Exception {
        runTest("../../completion/testData/basic/withLib/OverrideJava.kt");
    }

    @TestMetadata("SamAdapter.kt")
    public void testSamAdapter() throws Exception {
        runTest("../../completion/testData/basic/withLib/SamAdapter.kt");
    }

    @TestMetadata("SamAdapterAndGenerics.kt")
    public void testSamAdapterAndGenerics() throws Exception {
        runTest("../../completion/testData/basic/withLib/SamAdapterAndGenerics.kt");
    }

    @TestMetadata("ShadowingExtensionFromExplicitSimpleImport.kt")
    public void testShadowingExtensionFromExplicitSimpleImport() throws Exception {
        runTest("../../completion/testData/basic/withLib/ShadowingExtensionFromExplicitSimpleImport.kt");
    }

    @TestMetadata("TopLevelNonImportedExtFun.kt")
    public void testTopLevelNonImportedExtFun() throws Exception {
        runTest("../../completion/testData/basic/withLib/TopLevelNonImportedExtFun.kt");
    }

    @TestMetadata("TopLevelNonImportedExtProp.kt")
    public void testTopLevelNonImportedExtProp() throws Exception {
        runTest("../../completion/testData/basic/withLib/TopLevelNonImportedExtProp.kt");
    }

    @TestMetadata("TopLevelNonImportedFun.kt")
    public void testTopLevelNonImportedFun() throws Exception {
        runTest("../../completion/testData/basic/withLib/TopLevelNonImportedFun.kt");
    }

    @TestMetadata("TopLevelNonImportedProperty.kt")
    public void testTopLevelNonImportedProperty() throws Exception {
        runTest("../../completion/testData/basic/withLib/TopLevelNonImportedProperty.kt");
    }
}
